<?php
class TrabajosController extends AppController{
    public $uses = array('Empleado', 'Maquinaria', 'Empleado', 'Empresa','Cliente', 'Sucursale', 'Trabajo', 'Hojasruta', 'Estadostrabajo', 'Ordenespedido', 
    'Empleadosordene', 'Empleadostrabajo','Tipotrabajo','Inventario','Hojarutatipotrabajo','Inventariostrabajo', 'Hojasproduccione', 'Formato', 'Sucursale', 
    'Preciohoja','Reciboproduccione','Notaremisione','Notaentrega','Myhojasruta','Micra');
    public $layout = 'default';
    public $helpers = array('Html', 'Form','Js');
    public $components=array('Session');
    
    function beforeFilter(){
    date_default_timezone_set("America/La_Paz");    
        $this->checksession();
    }
    function index(){
        //debug($this->Session->read());exit;

        $usuario_id=$this->Session->read('usuario_id');
        $sucursal_id=$this->Session->read('sucursal_id');
        $i=0;
        
        $trabajos = $this->Trabajo->find('all');
        
        
        $i=0;
         
        foreach($trabajos as $trab){


            $sql = $this->Sucursale->find('first', array('conditions'=>array('Sucursale.id'=>$trab['Usuario']['sucursal_id'])));
            
            $trabajos[$i]['sucursal']['nombre'] = $sql['Sucursale']['nombre'];
            $trabajos[$i]['sucursal']['id'] = $sql['Sucursale']['id'];
            $i++;
        }
        
        $hojasproduccion = $this->Hojasproduccione->find('all', array('order'=>array('Hojasproduccione.trabajo_id ASC')));
        
        if(!empty($hojasproduccion)):
        $hojitas = array();
        $i=0;
        foreach($hojasproduccion as $hp){
            foreach($trabajos as $trab){
                if($trab['Trabajo']['id'] == $hp['Hojasproduccione']['trabajo_id']){
                    $hojitas[$i]['Hojasproduccione']['id']= $hp['Hojasproduccione']['id'];
                    $hojitas[$i]['Trabajo']['id']= $trab['Trabajo']['id'];
                    $i++;
                }
            }
        }
        $i=0;
        /*************************************CONSULTO SI EXISTEN TRABAJOS Q YA CONTINEN HOJASDEPRODUCCION******************************************/
        foreach($trabajos as $trab){
            $a=0;
            
            foreach($hojitas as $hoja){
               if($trab['Trabajo']['id'] == $hoja['Trabajo']['id']){
                //echo $trab['Trabajo']['id'];
                $trabajos[$i]['hp'] = $hoja['Hojasproduccione']['id'];
                $a=1;
               }   
            }
            if($a == 0){
                $trabajos[$i]['hp'] = 0;
            }
            $i++;
        }
        /*******************************************************************************/
        endif;
        $k=0;
        if($this->Session->read('tipo_id')=='1'):
            foreach ($trabajos as $mytrabajo) {
            
                $work[$k]=$mytrabajo;
                $k++;
            
        }

        else:
           
        foreach ($trabajos as $mytrabajo) {
            if($mytrabajo['sucursal']['id']==$sucursal_id){
                $work[$k]=$mytrabajo;
                $k++;
            }
        }
        endif;
        //debug($work);exit;
        $trabajos=$work;
        $this->set(compact('trabajos'));
    }
    function nuevo(){
        $this->request->data['Trabajo']['usuario_id']=$this->Session->read('usuario_id');
        $this->request->data['Trabajo']['fecharegistro']=date('Y-m-d');
        $this->Trabajo->create();
        
        if ($this->Trabajo->save($this->data)) {
            $usuario = $this->Session->read('usuario_id');
            $idtrabajo = $this->Trabajo->find('first', array('fields'=>array("MAX(Trabajo.id) as id")));
        
        $idtrabajo = $idtrabajo['0']['id'];
                $this->Session->setFlash('Nuevo trabajo');
                $this->redirect(array('action' => 'nuevotrabajo', $idtrabajo), null, true);
            } else {
                $this->Session->setFlash('No se pudo registrar!!!');
            }
    }
    function nuevotrabajo($id = null){
        if(!empty($this->data)){
            $id= $this->data['Trabajo']['id'];
            $this->Trabajo->id = $id;
            $this->Trabajo->read();
        if (!$id) {
            $this->Session->setFlash('Error al leer el registro');
            $this->redirect(array('action' => 'index'), null, true);
        }
        $this->request->data['Trabajo']['fecharegistro']=date('Y-m-d');
        $cliente_id=$this->data['Trabajo']['cliente_id'];
        
        if ($this->Trabajo->save($this->data)) {
                $this->Session->setFlash('Fase 1 registrada');
                $this->redirect(array('action' => 'nuevahojaruta', $id,$cliente_id), null, true);
            } else {
                $this->Session->setFlash('no se pudo modificar!!');
            }
        }
        else{
             $idtrabajo =$id;
        $usuario = $this->Session->read('usuario_id');
        $clientes = $this->Cliente->find('list', array('fields'=>array('Cliente.nombre')));
        $opt = $this->Estadostrabajo->find('list', array('fields'=>array('Estadostrabajo.nombre')));

        $this->set(compact('idtrabajo','opt', 'clientes', 'usuario'));
        }
    }
    function nuevahojaruta($id = null,$cliente_id=null){
        //debug($this->data);exit;
        $idtrabajo = $this->Trabajo->find('first', array('fields'=>array("MAX(Trabajo.id) as id")));
        if(!empty($this->data)){
        $cliente_id = $this->data['Hojasruta']['cliente_id'];
        /**********valida si es nuevo cliente********************/    
        if($cliente_id == 1){
        $this->Cliente->create();
        unset($this->request->data['Cliente']['id']);
        $data = $this->data['Cliente'];
          if(!($this->Cliente->save($data))){
            $this->Session->setFlash("no se pudieron guardar los datos del cliente");
           }else{
            $this->Session->setFlash("Nuevo cliente guardado!!!");
            $ultimo_cliente_id = $this->Cliente->id;
           }
       }else/*************************en caso de seleccionar cliente existente***********************************************/
        {
            $this->Cliente->id = $cliente_id;
            $data = $this->Cliente->read();
            $ultimo_cliente_id = $cliente_id;
            $data = $this->data['Cliente'];
            if($this->Cliente->save($data)){
                $this->Session->setFlash("Datos cliente actualizados!!!");
            }else{
                $this->Session->setFlash("No se actualizaron los datos del cliente!!!");
            }
        }
        $data = "";
        $this->Trabajo->create();
        $data['Trabajo']['cliente_id']=$ultimo_cliente_id;
        $data['Trabajo']['usuario_id']=$this->data['Hojasruta']['usuario_id'];
        $data['Trabajo']['estadotrabajo_id']=1;
        $data['Trabajo']['fecharegistro']=date('Y-m-d H:i:s');
        $this->Trabajo->save($data);
        $idtrabajo=$this->Trabajo->id;
        $this->request->data['Hojasruta']['trabajo_id']=$idtrabajo;
        $this->request->data['Hojasruta']['cliente_id']=$ultimo_cliente_id;  
        unset($this->request->data['telefono']);
        unset($this->request->data['celular']);
        unset($this->request->data['Cliente']);
        
        //debug($this->data);exit;
            if($this->Hojasruta->saveAll($this->data)){
             $this->Session->setFlash("Trabajo ".$idtrabajo." guardado exitosamente!");
                $this->redirect(array('action'=>'index'));
        }else{
                $this->Session->setFlash("Error al guardar!");
                $this->redirect(array('action'=>'index'));
            }
        }
        //*************************************************************
        $inventario = $this->Inventario->find('all',array('fields'=>array('Inventario.id','Producto.nombre')));
        $inventarios = array();
        foreach($inventario as $in):
        $k=$in['Inventario']['id'];
        $inventarios[$k]=$in['Producto']['nombre'];
        endforeach;
        $clientes = $this->Cliente->find('list', array(
        'fields'=>array('Cliente.id', 'Cliente.nombre'), 
        'order'=>array('Cliente.nombre ASC')
        ));
        $trabajo = $this->Trabajo->find('first', array('order'=>array('Trabajo.id DESC')));
        $numerotrabajo=$trabajo['Trabajo']['id']+1;
        $maquinas = $this->Maquinaria->find('list', array('fields'=>array('Maquinaria.nombre')));
        $empleados = $this->Empleado->find('list', array('fields'=>array('Empleado.nombre')));
        $sucursales = $this->Sucursale->find('list', array('fields'=>array('Sucursale.nombre')));
        $tipotrabajos= $this->Tipotrabajo->find('list',array('fields'=>array('Tipotrabajo.descripcion')));
        $lugartrabajo=array('ANVERSO'=>'ANVERSO','REVERSO'=>'REVERSO','AMBOS'=>'AMBOS');
        $this->set(compact('clientes', 'empleados', 'sucursales', 'id', 'maquinas','cliente','tipotrabajos','inventarios','cliente_id','lugartrabajo','numerotrabajo'));
    }
    public function hojasrutas($idtrabajo=null){
        $listar= $this->Hojasruta->find('all', array('conditions'=>array('Hojasruta.trabajo_id'=>$idtrabajo)));
    //debug($listar);exit;
        $this->set(compact('listar'));
     }
    function nuevaordenpedido($id = null){
        if (!empty($this->data)) {
           if ($this->Ordenespedido->saveAll($this->data)) {
                $this->Session->setFlash('Se registro su orden de trabajo correctamente');
                $this->redirect(array('action' => 'index'), null, true);
            } else {
                $this->Session->setFlash('no se pudo modificar!!');
            }
        }
        $empmaquinas = $this->Empleadostrabajo->find('all', array(
            'conditions'=>array('Empleadostrabajo.hojasruta_id'=>$id),
            'recursive' =>-1
        ));
        
        $datosempleados = $this->Empleadostrabajo->find('all', array(
            'conditions'=>array('Empleadostrabajo.hojasruta_id'), 
            'recursive'=>-1
        ));
       
       $datos = $this->Hojasruta->findById($id);
        $usuario = 1;
        $maquinas = $this->Maquinaria->find('list', array('fields'=>array('Maquinaria.nombre')));
        $empleados = $this->Empleado->find('list', array('fields'=>array('Empleado.nombre')));
        $sucursales = $this->Sucursale->find('list', array('fields'=>array('Sucursale.nombre')));
        $opt = $this->Estadostrabajo->find('list', array('fields'=>array('Estadostrabajo.nombre')));
        $this->set(compact('id','opt', 'maquinas', 'usuario', 'empleados', 'sucursales', 'empmaquinas', 'datos'));
    }
    function imprimir($id){
        $trabajo =$this->Trabajo->find('first',array('conditions'=>array('Trabajo.id'=>$id)));
        $trabajo1 =$this->Hojasruta->find('first',array('conditions'=>array('Hojasruta.trabajo_id'=>$id)));
        //debug($trabajo1);exit;
        $cliente['Cliente']['nombre']=$trabajo['Cliente']['nombre'];
        $cliente['Cliente']['telefono']=$trabajo['Cliente']['telefono'];  
        $cliente['Cliente']['celular']=$trabajo['Cliente']['celular'];      
        $empleados=$trabajo1['Empleadostrabajo'];
        $tipostrabajo=$trabajo1['Hojarutatipotrabajo'];
        $i=0;$k=0;
        foreach($empleados as $em):
            $empleado=$this->Empleado->find('first',array('conditions'=>array('Empleado.id'=>$em['empleado_id'])));
            $maquinaria=$this->Maquinaria->find('first',array('conditions'=>array('Maquinaria.id'=>$em['maquinaria_id'])));
            $nombre_empleado[$i]=array("nom_empleado"=>$empleado['Empleado']['nombre'], "maquina"=>$maquinaria['Maquinaria']['nombre']);
            $i++;
        endforeach;
        foreach($tipostrabajo as $tipos):
            $tipotrabajos1=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo1_id'])));
            $tipotrabajos2=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo2_id'])));
            $tipotrabajos3=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo3_id'])));
            $tipotrabajos4=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo4_id'])));
            $sucursal=$this->Sucursale->find('first',array('conditions'=>array('Sucursale.id'=>$tipos['sucursal_id'])));
            $tipo[$k]=array("tipotrabajo1"=>$tipotrabajos1['Tipotrabajo']['descripcion'],
                            "tipotrabajo2"=>$tipotrabajos2['Tipotrabajo']['descripcion'],
                            "tipotrabajo3"=>$tipotrabajos3['Tipotrabajo']['descripcion'],
                            "tipotrabajo4"=>$tipotrabajos4['Tipotrabajo']['descripcion'],
                            'descripcion'=>$tipos['descripcion'],
                            'cantidad_nominal'=>$tipos['cantidad_nominal'],
                            'sucursal'=>$sucursal['Sucursale']['nombre'],
                            'cara1'=>$tipos['cara1'],
                            'cara2'=>$tipos['cara2'],
                            'cara3'=>$tipos['cara3'],
                            'cara4'=>$tipos['cara4'],
                            );
            $k++;
        endforeach;
        $verifica=$this->Myhojasruta->find('first',array('conditions'=>array('Myhojasruta.trabajo_id'=>$trabajo['Trabajo']['id'])));
        //debug($verifica);exit;
        $this->set(compact('trabajo','trabajo1','nombre_empleado','tipo','cliente','verifica'));
    }
    function imprimirhp($id){
        $trabajo =$this->Trabajo->find('first',array('conditions'=>array('Trabajo.id'=>$id)));
        $trabajo1 =$this->Hojasruta->find('first',array('conditions'=>array('Hojasruta.trabajo_id'=>$id)));
        $cliente['Cliente']['nombre']=$trabajo['Cliente']['nombre'];
        $cliente['Cliente']['telefono']=$trabajo['Cliente']['telefono'];  
        $cliente['Cliente']['celular']=$trabajo['Cliente']['celular'];      
        $empleados=$trabajo1['Empleadostrabajo'];
        $tipostrabajo=$trabajo1['Hojarutatipotrabajo'];
        $i=0;$k=0;
        foreach($empleados as $em):
            $empleado=$this->Empleado->find('first',array('conditions'=>array('Empleado.id'=>$em['empleado_id'])));
            $maquinaria=$this->Maquinaria->find('first',array('conditions'=>array('Maquinaria.id'=>$em['maquinaria_id'])));
            $nombre_empleado[$i]=array("nom_empleado"=>$empleado['Empleado']['nombre'], "maquina"=>$maquinaria['Maquinaria']['nombre']);
            $i++;
        endforeach;
        foreach($tipostrabajo as $tipos):
            $tipotrabajos1=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo1_id'])));
            $tipotrabajos2=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo2_id'])));
            $tipotrabajos3=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo3_id'])));
            $tipotrabajos4=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo4_id'])));
            $sucursal=$this->Sucursale->find('first',array('conditions'=>array('Sucursale.id'=>$tipos['sucursal_id'])));
            $tipo[$k]=array("tipotrabajo1"=>$tipotrabajos1['Tipotrabajo']['descripcion'],
                            "tipotrabajo2"=>$tipotrabajos2['Tipotrabajo']['descripcion'],
                            "tipotrabajo3"=>$tipotrabajos3['Tipotrabajo']['descripcion'],
                            "tipotrabajo4"=>$tipotrabajos4['Tipotrabajo']['descripcion'],
                            'descripcion'=>$tipos['descripcion'],
                            'cantidad_nominal'=>$tipos['cantidad_nominal'],
                            'sucursal'=>$sucursal['Sucursale']['nombre'],
                            'cara1'=>$tipos['cara1'],
                            'cara2'=>$tipos['cara2'],
                            'cara3'=>$tipos['cara3'],
                            'cara4'=>$tipos['cara4'],
                            );
            $k++;
        endforeach;
        $verifica=$this->Myhojasruta->find('first',array('conditions'=>array('Myhojasruta.trabajo_id'=>$trabajo['Trabajo']['id'])));
        $this->set(compact('trabajo','trabajo1','nombre_empleado','tipo','cliente','verifica'));
    }
    public function eliminar($id = null)
    {
        if (!$id) {
            $this->Session->setFlash('id Invalida para borrar');
            $this->redirect(array('action' => 'index'));
        }
        
        if ($this->Trabajo->delete($id)) {
            $this->Session->setFlash('El trabajo  ' . $id . ' fue eliminado');
            $this->redirect(array('action' => 'index'));
        }
    }
    /***************************************************************funcion editar*********************************************************************/
    function editar($id = null){
        if(!empty($this->data)){
            $idtrabajo = $id;
            $trabajo1 =$this->Hojasruta->find('first',array('conditions'=>array('Hojasruta.trabajo_id'=>$idtrabajo), 'recursive'=>1));
            if($this->data['Cliente']['id'] == 1){
                $this->Cliente->create();
                if($this->Cliente->save($this->data)){
                    $this->data = '';
                    $idcliente = $this->Cliente->id;
                    $this->Hojasruta->id= $trabajo1['Hojasruta']['id'];
                    $this->Hojasruta->read();
                    $this->request->data['Hojasruta']['cliente_id'] = $idcliente;
                    if($this->Hojasruta->save($this->data)){
                        $this->Session->setFlash("Cliente asignado!!!");
                        $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
                    }else{
                      $this->Session->setFlash("no se pudo asignar el cliente!!!");
                      $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);  
                    } 
                }
            }else{
                $this->Cliente->id = $this->data['Cliente']['id'];
                $idcliente = $this->data['Cliente']['id'];
                $this->Cliente->read();
                if($this->Cliente->save($this->data)){
                    $this->data = '';
                    $this->Hojasruta->id= $trabajo1['Hojasruta']['id'];
                    $this->Hojasruta->read();
                    $this->request->data['Hojasruta']['cliente_id'] = $idcliente;
                    
                    if($this->Hojasruta->save($this->data)){
                        $this->request->data['Trabajo']['cliente_id']=$this->data['Hojasruta']['cliente_id'];
                        $this->Trabajo->id= $trabajo1['Hojasruta']['trabajo_id'];

                        $this->Trabajo->read();
                        unset($this->request->data['Hojasruta']['cliente_id']);
                        $this->Trabajo->save($this->data);
                        $this->Session->setFlash("Cliente asignado!!!");
                        $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
                    }else{
                      $this->Session->setFlash("no se pudo asignar el cliente!!!");
                      $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);  
                    } 
                }else{
                   $this->Session->setFlash("no se pudo asignar el cliente!!!");
                   $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);  
                    } 
            }
        }else{
               $clientes = $this->Cliente->find('list', array(
        'fields'=>array('Cliente.id', 'Cliente.nombre'), 
        'order'=>array('Cliente.nombre ASC')
        ));
        $trabajo =$this->Trabajo->find('first',array('conditions'=>array('Trabajo.id'=>$id)));
        $trabajo1 =$this->Hojasruta->find('first',array('conditions'=>array('Hojasruta.trabajo_id'=>$id), 'recursive'=>1));
        $inventarios = $trabajo1['Inventariostrabajo'];
        $datosinventario = $this->Inventario->find('all',array('fields'=>array('Inventario.id','Producto.nombre')));
        $inventariodatos = array();
        foreach($datosinventario as $in):
        $k=$in['Inventario']['id'];
        $inventariodatos[$k]=$in['Producto']['nombre'];
        endforeach;
        $j = 0;
        foreach($inventarios as $inv){
            $producto = $this->Inventario->find(
            'first', array(
            'conditions'=>array('Inventario.id'=>$inv['inventario_id'])
            )
            );
            $inventa[$j] = array(
            "id" => $inv['id'], 
            "producto" => $producto['Producto']['nombre'], 
            "ancho"=>$inv['ancho'],
            "litros"=>$inv['litros'] 
            );
          $j++;
        }
        //debug($trabajo1);exit;
        //$inventarios = $inventa;
        $hojarutaid = $trabajo1['Hojasruta']['id'];
        $cliente = $trabajo1['Cliente'];  
        $empleadotrabajo = $trabajo1['Empleadostrabajo'];
        $tipostrabajo=$trabajo1['Hojarutatipotrabajo'];
        $empleados = $this->Empleado->find('list', array(
        'fields'=>array('Empleado.id', 'Empleado.nombre')
        ));
        $maquinas = $this->Maquinaria->find('list', array(
        'fields'=>array('Maquinaria.id', 'Maquinaria.nombre')
        ));
        $i=0;$k=0;
        foreach($empleadotrabajo as $em):
           //debug($em);exit;
            $empleado = $this->Empleado->find('first',
            array('conditions'=>array('Empleado.id'=>$em['empleado_id'])));
            $maquinaria = $this->Maquinaria->find('first',array('conditions'=>array('Maquinaria.id'=>$em['maquinaria_id'])));
            $nombre_empleado[$i]=array(
            "id"=>$em['id'],
            "hojaruta_id"=>$em['hojasruta_id'], 
            "nom_empleado"=>$empleado['Empleado']['nombre'], 
            "maquina"=>$maquinaria['Maquinaria']['nombre']
            );
            $i++;
        endforeach;
        foreach($tipostrabajo as $tipos):
            $tipotrabajos1=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo1_id'])));
            $tipotrabajos2=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo2_id'])));
            $tipotrabajos3=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo3_id'])));
            $tipotrabajos4=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo4_id'])));
            $sucursal=$this->Sucursale->find('first',array('conditions'=>array('Sucursale.id'=>$tipos['sucursal_id'])));
            $tipo[$k]=array("trabajo1_id"=>$tipos['tipotrabajo1_id'],
                            "tipotrabajo1"=>$tipotrabajos1['Tipotrabajo']['descripcion'],
                            "trabajo2_id"=>$tipos['tipotrabajo2_id'],
                            "tipotrabajo2"=>$tipotrabajos2['Tipotrabajo']['descripcion'],
                            "trabajo3_id"=>$tipos['tipotrabajo3_id'],
                            "tipotrabajo3"=>$tipotrabajos3['Tipotrabajo']['descripcion'],
                            "trabajo4_id"=>$tipos['tipotrabajo4_id'],
                            "tipotrabajo4"=>$tipotrabajos4['Tipotrabajo']['descripcion'],
                            
                            'descripcion'=>$tipos['descripcion'],
                            'cantidad_nominal'=>$tipos['cantidad_nominal'],
                            'sucursal'=>$sucursal['Sucursale']['nombre'],
                            'cara1'=>$tipos['cara1'],
                            'cara2'=>$tipos['cara2'],
                            'cara3'=>$tipos['cara3'],
                            'cara4'=>$tipos['cara4'],
                            'id'=>$tipos['id']
                            );
            $k++;
        endforeach;
        //debug($cliente);exit;
        $this->set(compact('hojarutaid', 'trabajo','trabajo1','nombre_empleado','tipo','cliente', 'clientes', 'id', 'maquinas', 'empleados', 'inventariodatos', 'inventarios'));
        }//fin del else not empty del data
    /***************************************************************fin funcion editar*********************************************************************/    
    }
    public function auto_complete(){
       $clientes = $this->Cliente->find('list', array(
            'conditions' => array(
                'Cliente.nombre LIKE' => '%'.$this->params['url']['autoCompleteText'].'%'
            ),
            'fields' => array('nombre'),
            'limit' => 30
            
        ));
       $this->set(compact('clientes'));
        $this->layout = 'ajax';     
   }
   public function ajaxdatoscliente($dato = null){
    $this->layout = 'ajax';
    $cliente = $this->Cliente->find("first", array('conditions'=>array('Cliente.id LIKE'=>$dato)));
    $clientes = $this->Cliente->find('list', array('fields'=>array('Cliente.id', 'Cliente.nombre'))); 
    $this->set(compact('cliente', 'clientes', 'id'));
   }
   /*************************************************FUNCION NUEVA HOJA DE PRODUCCION****************************************************************************************/
   public function nuevahojaproduccion($idtrabajo = null){
    if(!empty($this->data)){
        
        unset($this->request->data['subtotal']);
        //debug($this->data);exit;
        if($this->Hojasproduccione->saveAll($this->data['Hojasproduccione'],array('validate'=>'first'))){
           $this->Session->setFlash("Hoja de producci&oacute;n creada!!!");
           $this->redirect(array("controller" => "Trabajos", "action" => "index"), null, false);
        }else{
           $this->Session->setFlash("error al crear!!!");
            $this->redirect(array("controller" => "Trabajos", "action" => "index"), null, false);
                    } 
    }else{
        $trabajo = $this->Hojasruta->find('first',array('conditions'=>array('Hojasruta.trabajo_id'=>$idtrabajo)));
        $hojaruta = $trabajo['Hojasruta']['id'];
        $cliente = $trabajo['Cliente'];
        $tipostrabajo = $trabajo['Hojarutatipotrabajo'];

        $tipos = array();
        $k=0;
        
        foreach($tipostrabajo as $t){
            for($i=1;$i<=4;$i++){
                if($t["tipotrabajo".$i."_id"] != null){
                    $descripcion1 = $this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$t["tipotrabajo".$i."_id"])));

                    $tipos[$k] = array(
                    'idregistro' => $t['id'],
                    'id' => $t["tipotrabajo".$i."_id"],
                    "tipo"=>$descripcion1['Tipotrabajo']['descripcion'],
                    'descripcion' => $t['descripcion'],
                    'cara' => $t["cara".$i],
                    'tipo_id' => $descripcion1['Tipotrabajo']['tipo_id'],
                    'sucursal_id'=>$t['sucursal_id']
                    );
                 $k++;   
                }        
            }
        }

        $usuario = $this->Session->read('usuario_id');
        $tipostrabajo = $tipos;
        $formatoshojas = $this->Preciohoja->find(
           'list', 
           array(
           'fields'=>array('Preciohoja.id','Preciohoja.nombre')
           )
           );
        $trabajo = $trabajo['Hojasruta'];
        $val = $this->Formato->find('all',array('fields'=>array('Formato.id' , 'Formato.precio') ,'conditions'=>array('Formato.tipotrabajo_id'=>6)));
        foreach ($val as $val1) {

            $valor[$val1['Formato']['precio']]=$val1['Formato']['precio'];
            
    
        }
        $val = $this->Formato->find('all',array('fields'=>array('Formato.id' , 'Formato.precio') ,'conditions'=>array('Formato.tipotrabajo_id'=>4)));
        foreach ($val as $val1) {

            $valor1[$val1['Formato']['precio']]=$val1['Formato']['precio'];
            
    
        }
        $val = $this->Formato->find('all',array('fields'=>array('Formato.id' , 'Formato.precio') ,'conditions'=>array('Formato.tipotrabajo_id'=>3)));
        foreach ($val as $val1) {

            $valor2[$val1['Formato']['precio']]=$val1['Formato']['precio'];
            
    
        }
        //debug($tipos);exit;
        $this->set(compact('usuario', 'trabajo', 'tipos', 'cliente', 'idtrabajo', 'formatoshojas', 'hojaruta','valor','valor1','valor2'));   

      }
   }
  /*********************************************************************************/ 
 /*    *funcion para calcular los precios de cada formato de trabajo             **/
 /*********************************************************************************/
   public function ajaxcosto($idtrabajo=null, $tipotrabajo=null,$canti = null, $dim1 = null, $dim2 = null, $tipo=null, $cara=null, $hoja=null, $n = null,$precion=null){
    debug($precion);exit;
    
    
       $this->layout = 'ajaxadr';
       /**valida si los datos estan vacios**/
       if($canti == null || $dim1 ==  null || $dim2 == null){
          $costos = array('0'=>'0.00');;
          $idcosto = 0;
       }else{
      
         $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.cantidadinicial <='=>$canti, 
                                  'Formato.cantidadfinal >='=>$canti,
                                  'Formato.desdemedini <='=>$dim1,
                                  'Formato.hastamedini >='=>$dim1, 
                                  'Formato.desdemedfin <='=>$dim2,
                                  'Formato.hastamedfin >='=>$dim2, 
                                  ), 
               'order'=>array('Formato.precio DESC') 
              
              )
              );
         
          
        if(empty($costo1) && $tipo == 2){
           
            $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.desdemedini <='=>$dim1,
                                  'Formato.hastamedini >='=>$dim1, 
                                  'Formato.desdemedfin <='=>$dim2,
                                  'Formato.hastamedfin >='=>$dim2,
                                  'Formato.cantidadfinal <='=>$canti 
                                  ), 
               'order'=>array('Formato.precio DESC'),
               'group'=>array('Formato.precio')
              )
              );
            
        }elseif(empty($costo1)){
            $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.cantidadinicial <='=>$canti, 
                                  'Formato.cantidadfinal >='=>$canti 
                                  ), 
               'order'=>array('Formato.precio ASC'),
               'group'=>array('Formato.precio')
              )
              );
        }
        
        
      
 
 /*obtener el rango y precio para el tipo de trabajo sectorizado*/
 if($tipo == 4){
     $rango = $dim1 * $dim2;
     $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.cantidadinicial <='=>$canti, 
                                  'Formato.cantidadfinal >='=>$canti,
                                  'Formato.rangoini <='=>$rango,
                                  'Formato.rangofin >='=>$rango
                                  ), 
               'order'=>array('Formato.id DESC') 
              
              )
              );
        if(empty($costo1)){
            $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.rangoini <='=>$rango,
                                  'Formato.rangofin >='=>$rango, 
                                  'Formato.cantidadfinal <='=>$canti 
                                  ), 
               'order'=>array('Formato.precio ASC'),
               'group'=>array('Formato.precio')
              )
              );
        }
       
 }//fin rango de precios tipo sectorizados
   
 if(empty($costo1)){
            $precio =0;
            $cantidad = 1;
            
        }else{
            
            $precio = $costo1['Formato']['precio'];
            $cantidad = $costo1['Formato']['cantidadfinal'];
           
        }

        $neighbors = $this->Formato->find('neighbors', array('field' => 'precio', 'value' => $precio,
        'fields'=>array('Formato.id', 'Formato.precio', 'Formato.cantidadfinal'),
        'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                     'Formato.precio <>'=>$costo1['Formato']['precio']
                     ),
        'order'=>array('Formato.precio ASC'),
        'group'=>array('Formato.precio')
        ));


 /***********************************************arma el array de costos*********************************************************************/ 
         if(empty($neighbors)){/*si el caso ultimo tb es vacio no exiten datos con los parametros introducidos*/
                $costos = array('0'=>'0.00');
         }
         
         if(!empty($neighbors)){
            
            $precioprev =$neighbors['prev']['Formato']['precio'];
            if($precioprev < 1){
                
                $precioprev = (($precioprev * ($dim1 * $dim2))* $canti);
            }
            
            $precionext = $neighbors['next']['Formato']['precio'];
            if($precionext < 1){
                $precionext = $precionext * $canti;
            }
           $precioprev = number_format($precioprev, 2, '.', '');
           $precionext = number_format($precionext, 2, '.', '');
            
            $costos["$precioprev"] = $precioprev;
            $costos["$precionext"] = $precionext;
            
            if($precio != 0)
            $precio = number_format($precio, 2, '.', '');
               $costos["$precio"] = $precio;
           
            $array = array(
                $costos,
                array_keys($costos)
            );
            array_multisort($array[0], SORT_ASC);
            $costos = $array[0];
            
            
            
         }else{//si no exiten ni vecinos
            $costos["$precio"]= $precio;            
         }

 /***********************************************fin calculo de costo y vecinos*********************************************************************/
         
        $p = $precio;
      
        /******************************calculo del precio por tipo plasitcos y sectorizados*******************************************/
        
        if($tipo == 1):
           $precio = ($p *($dim1 * $dim2)) * $canti;
          
           $precio = $precio * $cara;
         $redondeo = explode('.', $precio);
            
            if($redondeo[1]<=10):
            $decimal=0;
            endif;
            if($redondeo[1]>=11 and $redondeo[1]<=50):
            $decimal=0.50;
            endif; 
            if($redondeo[1]>=51 and $redondeo[1]<=99):
            $decimal=1;
            endif; 
            $precio=$redondeo[0]+$decimal;   
        endif;
        
        /********************************//*fin calculo del precio por tipo  barniz uv matte brillo*******************************************/
        
        /******************************calculo del precio por tipo barniz uv matte brillo*******************************************/
        if($tipo == 2):
        
        if($cantidad < $canti){
            if($p < 1){
        
               $precio = $dim1 * $dim2 * $costo1['Formato']['precio'] * $canti;  
          
            }else{
                $precio = $p;
            }
            
            
        }else{
            $precio = $p;
        }
        $redondeo = explode('.', $precio);
            
            if($redondeo[1]<=10):
            $decimal=0;
            endif;
            if($redondeo[1]>=11 and $redondeo[1]<=50):
            $decimal=0.50;
            endif; 
            if($redondeo[1]>=51 and $redondeo[1]<=99):
            $decimal=1;
            endif; 
            $precio=$redondeo[0]+$decimal;
        endif;
        
        /********************************//*fin calculo del precio por tipo  barniz uv matte brillo*******************************************/
        /******************************calculo del precio por tipo plastico rigido*******************************************/
        if($tipo == 3){
           //echo "hola 3";
           $preciohoja = $this->Preciohoja->find(
           'all', 
           array(
           'conditions'=>array('Preciohoja.id'=>$hoja), 
           'fields'=>array('Preciohoja.precio')
           )
           ); 
           $precio = $preciohoja[0]['Preciohoja']['precio'];
           $precio = $precio * $canti * $cara;
           $redondeo = explode('.', $precio);
            
            if($redondeo[1]<=10):
            $decimal=0;
            endif;
            if($redondeo[1]>=11 and $redondeo[1]<=50):
            $decimal=0.50;
            endif; 
            if($redondeo[1]>=51 and $redondeo[1]<=99):
            $decimal=1;
            endif; 
            $precio=$redondeo[0]+$decimal;
        }
        /********************************//*calculo del precio por tipo sectorizados*******************************************/
        if($tipo == 4){
            
            debug($costo);exit;
            $precio = (($costo1['Formato']['precio'] * $canti)/$costo1['Formato']['cantidadfinal']) * $cara;
            $redondeo = explode('.', $precio);
            
            if($redondeo[1]<=10):
            $decimal=0;
            endif;
            if($redondeo[1]>=11 and $redondeo[1]<=50):
            $decimal=0.50;
            endif; 
            if($redondeo[1]>=51 and $redondeo[1]<=99):
            $decimal=1;
            endif; 
            $precio=$redondeo[0]+$decimal;

        }
        /********************************//*fin calculo del precio por tipo plastico rigido*******************************************/
        
        /********************************//*fin calculo del precio por tipo plastico rigido*******************************************/
        $precio = number_format($precio, 2,'.', '');
        
        $costos["$precio"] = $precio;
        $array = array(
                $costos,
                array_keys($costos)
            );

            // use multisort, first on the values, then on the keys. This will erase the indexes in the $searchResult array\
            array_multisort($array[0], SORT_ASC);
            $costos = $array[0];
        
        $idcosto = "$precio";
        }
       
     $this->set(compact('costos','idcosto', 'n'));
     
   }    
   /****************************fin funcion ajaxcosto******************************************************************************************/
   public function vacio(){
       $this->layout = 'ajax';
   }
   public function editaclientehr($id =null){
    $this->layout = 'ajax';
    if(!empty($this->data)){
        $this->Empleadostrabajo->id = $id;
        $this->Empleadostrabajo->read();
        if($this->Empleadostrabajo->save($this->data)){
            $this->Session->setFlash("Empleado modificado");
        }
    }else{
       $maquinas = $this->Maquinaria->find('list', array('fields'=>array('Maquinaria.nombre')));
       $empleados = $this->Empleado->find('list', array('fields'=>array('Empleado.nombre')));
       $empleado = $this->Empleadostrabajo->find(
       'first', 
       array(
       'conditions'=>array('Empleadostrabajo.id'=>$id)
       )
       );
       $this->set(compact('emplado', 'empleados', 'maquinas'));    
    }
   }
   public function ajaxeditatipostrabajos($id=null, $idtrab=null){
    $this->layout = 'ajax';
    $tipo = $this->Hojarutatipotrabajo->find('first', array('conditions'=>array('Hojarutatipotrabajo.id'=>$id), 'recursive'=>-1));
    $tipotrabajos= $this->Tipotrabajo->find('list',array('fields'=>array('Tipotrabajo.descripcion')));
    $lugartrabajo=array('ANVERSO'=>'ANVERSO','REVERSO'=>'REVERSO','AMBOS'=>'AMBOS');
    $sucursales = $this->Sucursale->find('list', array('fields'=>array('Sucursale.id', 'Sucursale.nombre')));
    $this->set(compact('tipo', 'tipotrabajos', 'lugartrabajo', 'sucursales', 'idtrab'));
    if(!empty($this->data)){
        $idtrabajo = $id;
        $this->Hojarutatipotrabajo->id = $this->data['Hojarutatipotrabajo']['id'];
        $this->Hojarutatipotrabajo->read();
        if($this->Hojarutatipotrabajo->save($this->data)){
            $this->Session->setFlash("Tipo de trabajo modificado!!!");
            $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
        }else{
            $this->Session->setFlash("no se puedo modificar!!!");
        }
    }
   }
  public function ajaxeditempleado($id = null, $idtrab=null){
    $this->layout = 'ajax';
    if(!empty($this->data)){
        $idtrabajo = $id;
        $this->Empleadostrabajo->id = $this->data['Empleadostrabajo']['id'];
        $this->Empleadostrabajo->read();
        if($this->Empleadostrabajo->save($this->data)){
            $this->Session->setFlash("Empleado reasignado!!!");
            $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
        }else{
            $this->Session->setFlash("no se puedo modificar!!!");
        }
    }else{
        $empleados = $this->Empleado->find('list', array(
        'fields'=>array('Empleado.id', 'Empleado.nombre')
        ));
        $maquinas = $this->Maquinaria->find('list', array(
        'fields'=>array('Maquinaria.id', 'Maquinaria.nombre')
        ));
        $empleado = $this->Empleadostrabajo->find(
        'first', 
        array(
        'conditions'=>array('Empleadostrabajo.id'=>$id), 'recursive'=>-1
        )
        );
        $this->set(compact('empleado', 'empleados', 'maquinas', 'idtrab'));
    }
  }
  public function ajaxaddempleado($hojarutaid=null, $idtrab=null){
    $this->layout = 'ajaxadr';
    if(!empty($this->data)){
        $idtrabajo = $hojarutaid;
        $this->Empleadostrabajo->create();
        $data = $this->data['Empleadostrabajo'];
        if($this->Empleadostrabajo->saveAll($data)){
            $this->Session->setFlash("Empleados asignados!!!");
            $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
        }else{
            $this->Session->setFlash("no se pudo asignador mas empleados!!!");
        }
    }else{
       $empleados = $this->Empleado->find('list', array(
        'fields'=>array('Empleado.id', 'Empleado.nombre')
        ));
        $maquinas = $this->Maquinaria->find('list', array(
        'fields'=>array('Maquinaria.id', 'Maquinaria.nombre')
        ));
        
        $this->set(compact('empleado', 'empleados', 'maquinas', 'idtrab', 'hojarutaid')); 
    }
    
  }
  public function ajaxaddtrabajo($hojarutaid=null, $idtrab=null){
    $this->layout = 'ajaxadr';
    if(!empty($this->data)){
        
        
        $idtrabajo = $hojarutaid;
        $this->Hojarutatipotrabajo->create();
        $data = $this->data['Hojarutatipotrabajo'];
        
        if($this->Hojarutatipotrabajo->saveAll($data)){
            $this->Session->setFlash("Trabajos guardados!!!");
            $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
        }else{
            $this->Session->setFlash("no se pudo asignador mas empleados!!!");
        }
    }else{
       
        $sucursales = $this->Sucursale->find('list', array('fields'=>array('Sucursale.nombre')));
        $tipotrabajos= $this->Tipotrabajo->find('list',array('fields'=>array('Tipotrabajo.descripcion')));
        $lugartrabajo=array('ANVERSO'=>'ANVERSO','REVERSO'=>'REVERSO','AMBOS'=>'AMBOS');
         
        $this->set(compact('sucursales', 'tipotrabajos', 'lugartrabajo', 'idtrab', 'hojarutaid')); 
    }
    
  }
  public function eliminarempleado($id=null, $idtrab=null){
    
      if (!$id) {
            $this->Session->setFlash('id Invalida para eliminar');
            $this->redirect(array('action' => 'editar', $idtrab), null, true);
        }
        if ($this->Empleadostrabajo->delete($id)) {
            $this->Session->setFlash('El emplado y m&aacute;quina  ' . $id . ' fue desasignados');
            $this->redirect(array('action' => 'editar', $idtrab), null, true);
        }
  }
  public function eliminartipo($id=null, $idtrab=null){
    
      if (!$id) {
            $this->Session->setFlash('id Invalida para eliminar');
            $this->redirect(array('action' => 'editar', $idtrab), null, true);
        }
        if ($this->Hojarutatipotrabajo->delete($id)) {
            $this->Session->setFlash('El trabajo ' . $id . ' fue eliminado');
            $this->redirect(array('action' => 'editar', $idtrab), null, true);
        }
  } 
  public function ajaxeditinventario($id=null, $idtrab=null){
    $this->layout = 'ajax';
    if(!empty($this->data)){
        $idtrabajo = $id;
        $this->Inventariostrabajo->id = $this->data['Inventariostrabajo']['id'];
        $this->Inventariostrabajo->read();
        if($this->Inventariostrabajo->save($this->data)){
            $this->Session->setFlash("Producto del inventario editado!!!");
            $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
        }else{
            $this->Session->setFlash("no se puedo modificar!!!");
        }
    }else{
        $dato = $this->Inventariostrabajo->find(
        'first', array(
        'conditions'=>array('Inventariostrabajo.id'=>$id)
        )
        );
        $datosinventario = $this->Inventario->find('all',array('fields'=>array('Inventario.id','Producto.nombre')));
        $inventariodatos = array();
        foreach($datosinventario as $in):
        $k=$in['Inventario']['id'];
        $inventariodatos[$k]=$in['Producto']['nombre'];
        endforeach;
        $this->set(compact('dato', 'id', 'idtrab', 'inventariodatos'));
    }
    
  }
  public function ajaxaddproducto($hojarutaid=null, $idtrab=null){
    $this->layout = 'ajaxadr';
    if(!empty($this->data)){
        //debug($this->data);exit;
        $idtrabajo = $hojarutaid;
        $this->Inventariostrabajo->create();
        $data = $this->data['Inventariostrabajo'];
        if($this->Inventariostrabajo->saveAll($data)){
            $this->Session->setFlash("Productos de inventario guardados!!!");
           //debug($data);exit;
            $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
        }else{
            $this->Session->setFlash("no se pudo asignador mas productos!!!");
            //debug($data);exit;
            $this->redirect(array("controller" => "Trabajos", "action" => "editar",$idtrabajo), null, false);
        }
    }else{
        $inventario = $this->Inventario->find('all',array('fields'=>array('Inventario.id','Producto.nombre')));
        $inventarios = array();
        foreach($inventario as $in):
        $k=$in['Inventario']['id'];
        $inventarios[$k]=$in['Producto']['nombre'];
        endforeach;
        //debug($inventarios);exit;
        $this->set(compact('inventarios', 'idtrab', 'hojarutaid')); 
    }
    
  }
  public function eliminarproductoinv($id = null, $idtrab = null){
     if (!$id) {
            $this->Session->setFlash('id Invalida para eliminar');
            $this->redirect(array('action' => 'editar', $idtrab), null, true);
        }
        if ($this->Inventariostrabajo->delete($id)) {
            $this->Session->setFlash('El producto ' . $id . ' fue desasignado de la hoja de ruta');
            $this->redirect(array('action' => 'editar', $idtrab), null, true);
        }
  }
  public function verhojaproduccion($idtrabajo = null, $idhojaruta=null){
    $hoja = $this->Hojasproduccione->find('all', array(
    'conditions'=>array('Hojasproduccione.trabajo_id'=> $idtrabajo, 
                        'Hojasproduccione.hojaruta_id'=> $idhojaruta
                        )
    ));
    $trabajo_id=$hoja[0]['Hojasproduccione']['trabajo_id'];
    $array = explode(" ",$hoja[0]['Hojasproduccione']['fecha']);
    $cliente=$this->Trabajo->find('first',array('conditions'=>array('Trabajo.id'=>$trabajo_id)));
    $horas = $array['1'];
    $array = $array['0'];
    $array = explode("-",$array);
    $anio = $array[0];
    $mes = $array[1];
    $dia = $array[2];
    $notaremision=$this->Notaremisione->find('first',array('conditions'=>array('Notaremisione.trabajo_id'=>$idtrabajo,'Notaremisione.hojaruta_id'=>$idhojaruta)));
    $notaentrega=$this->Notaentrega->find('first',array('conditions'=>array('Notaentrega.trabajo_id'=>$idtrabajo,'Notaentrega.hojaruta_id'=>$idhojaruta)));
    $micras=$this->Micra->find('all',array('conditions'=>array('Micra.trabajo_id'=>$trabajo_id)));
    //debug($micras);exit;
    //debug($hoja);exit;
    $this->set(compact('hoja', 'dia', 'mes', 'anio', 'horas','cliente','notaremision','notaentrega','micras'));
  }
  public function editarhojaproduccion($idtrabajo=null, $idhojaruta=null){
    
    
    
    $hoja = $this->Hojasproduccione->find('all', array(
    'conditions'=>array('Hojasproduccione.trabajo_id'=> $idtrabajo, 
                        'Hojasproduccione.hojaruta_id'=> $idhojaruta
                        ),
    'recursive'=>2
    ));
    
    $nombre_cliente = $hoja[0]['Trabajo']['Cliente']['nombre'];
    
    //DEBUG($nombre_cliente);
    
    $array = explode(" ",$hoja[0]['Hojasproduccione']['fecha']);
    
    $horas = $array['1'];
    $array = $array['0'];
    $array = explode("-",$array);
    
    $anio = $array[0];
    $mes = $array[1];
    $dia = $array[2];
    //debug($hoja);exit;
    $this->set(compact('hoja', 'dia', 'mes', 'anio', 'horas', 'nombre_cliente', 'idtrabajo', 'idhojaruta'));
  }
  public function ajax_edit_hojaproduccion_registro($id=null, $idtrabajo =null, $idhojaruta =null){
      $this->layout = "ajax";
      
       $this->Hojasproduccione->id = $id;
                if (!$id) {
                    $this->Session->setFlash('No existe tal registro');
                    $this->redirect(array('action' => 'index'), null, true);
                }
                if (empty($this->data)) {
                    $this->data = $this->Hojasproduccione->read(); //find(array('id' => $id));
                    
                } else {
                   
                   $this->request->data['Hojasproduccione']['precio']=$this->data['subtotal'];
                   unset($this->request->data['subtotal']);
                   //debug($this->data);exit;
                    if ($this->Hojasproduccione->save($this->data)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array("controller" => "Trabajos", "action" => "editarhojaproduccion", $idtrabajo, $idhojaruta), null, false);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                        $this->redirect(array("controller" => "Trabajos", "action" => "editarhojaproduccion", $idtrabajo, $idhojaruta), null, false);
                    }
                }
   
      $formatoshojas = $this->Preciohoja->find(
           'list', 
           array(
           'fields'=>array('Preciohoja.id','Preciohoja.nombre')
           )
           );
      $val = $this->Formato->find('all',array('fields'=>array('Formato.id' , 'Formato.precio') ,'conditions'=>array('Formato.tipotrabajo_id'=>6)));
        foreach ($val as $val1) {

            $valor[$val1['Formato']['precio']]=$val1['Formato']['precio'];
            
    
        }
      $this->set(compact('formatoshojas','valor'));
  }
  function ajax_edit_hojaproduccion_tipofac($idtrabajo =null,$idhojaruta){
    
    if(!empty($this->data)):
         $data=$this->Hojasproduccione->find('first',array('conditions'=>array('Hojasproduccione.trabajo_id'=>$idtrabajo,
                                                            'Hojasproduccione.hojaruta_id'=>$idhojaruta)));
     
     $id=$data['Hojasproduccione']['id'];
     $this->Hojasproduccione->id=$id;
     $mydata=$this->Hojasproduccione->read();
     //debug($this->data);
     $mydata['Hojasproduccione']['nr']=$this->data['Hojasproduccione']['nr'];
     $mydata['Hojasproduccione']['nf']=$this->data['Hojasproduccione']['nf'];
     
     $this->Hojasproduccione->save($mydata);
     $this->Session->setFlash('Los datos fueron modificados');
     $this->redirect(array("controller" => "Trabajos", "action" => "editarhojaproduccion", $idtrabajo, $idhojaruta), null, false);

    endif;
    $this->layout = 'ajax';
    $this->data=$this->Hojasproduccione->find('first',array('conditions'=>array('Hojasproduccione.trabajo_id'=>$idtrabajo,
                                                            'Hojasproduccione.hojaruta_id'=>$idhojaruta)));
    $this->set(compact('idtrabajo','idhojaruta'));
  }
  function ajaxeditcosto($tipotrabajo=null,$canti = null, $dim1 = null, $dim2 = null, $tipo=null, $cara=null, $hoja=null){
    
       $this->layout = 'ajax';
       /**valida si los datos estan vacios**/
       if($canti == null || $dim1 ==  null || $dim2 == null){
          $costos = array('0'=>'0.00');;
          $idcosto = 0;
       }else{
         
         $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.cantidadinicial <='=>$canti, 
                                  'Formato.cantidadfinal >='=>$canti,
                                  'Formato.desdemedini <='=>$dim1,
                                  'Formato.hastamedini >='=>$dim1, 
                                  'Formato.desdemedfin <='=>$dim2,
                                  'Formato.hastamedfin >='=>$dim2, 
                                  ), 
               'order'=>array('Formato.precio DESC') 
              
              )
              );
         
          
        if(empty($costo1) && $tipo == 2){
           
            $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.desdemedini <='=>$dim1,
                                  'Formato.hastamedini >='=>$dim1, 
                                  'Formato.desdemedfin <='=>$dim2,
                                  'Formato.hastamedfin >='=>$dim2,
                                  'Formato.cantidadfinal <='=>$canti 
                                  ), 
               'order'=>array('Formato.precio DESC'),
               'group'=>array('Formato.precio')
              )
              );
            
        }elseif(empty($costo1)){
            $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.cantidadinicial <='=>$canti, 
                                  'Formato.cantidadfinal >='=>$canti 
                                  ), 
               'order'=>array('Formato.precio ASC'),
               'group'=>array('Formato.precio')
              )
              );
        }
        
        
      
 
 /*obtener el rango y precio para el tipo de trabajo sectorizado*/
 if($tipo == 4){
     $rango = $dim1 * $dim2;
     $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.cantidadinicial <='=>$canti, 
                                  'Formato.cantidadfinal >='=>$canti,
                                  'Formato.rangoini <='=>$rango,
                                  'Formato.rangofin >='=>$rango
                                  ), 
               'order'=>array('Formato.id DESC') 
              
              )
              );
        if(empty($costo1)){
            $costo1 = $this->Formato->find(
              'first', array(
              'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                                  'Formato.rangoini <='=>$rango,
                                  'Formato.rangofin >='=>$rango, 
                                  'Formato.cantidadfinal <='=>$canti 
                                  ), 
               'order'=>array('Formato.precio ASC'),
               'group'=>array('Formato.precio')
              )
              );
        }
       
 }//fin rango de precios tipo sectorizados
   
 if(empty($costo1)){
            $precio =0;
            $cantidad = 1;
            
        }else{
            
            $precio = $costo1['Formato']['precio'];
            $cantidad = $costo1['Formato']['cantidadfinal'];
           
        }

        $neighbors = $this->Formato->find('neighbors', array('field' => 'precio', 'value' => $precio,
        'fields'=>array('Formato.id', 'Formato.precio', 'Formato.cantidadfinal'),
        'conditions'=>array('Formato.tipotrabajo_id'=>$tipotrabajo,
                     'Formato.precio <>'=>$costo1['Formato']['precio']
                     ),
        'order'=>array('Formato.precio ASC'),
        'group'=>array('Formato.precio')
        ));


 /***********************************************arma el array de costos*********************************************************************/ 
         if(empty($neighbors)){/*si el caso ultimo tb es vacio no exiten datos con los parametros introducidos*/
                $costos = array('0'=>'0.00');
         }
         
         if(!empty($neighbors)){
            
            $precioprev =$neighbors['prev']['Formato']['precio'];
            if($precioprev < 1){
                
                $precioprev = (($precioprev * ($dim1 * $dim2))* $canti);
            }
            
            $precionext = $neighbors['next']['Formato']['precio'];
            if($precionext < 1){
                $precionext = $precionext * $canti;
            }
           $precioprev = number_format($precioprev, 2, '.', '');
           $precionext = number_format($precionext, 2, '.', '');
            
            $costos["$precioprev"] = $precioprev;
            $costos["$precionext"] = $precionext;
            
            if($precio != 0)
            $precio = number_format($precio, 2, '.', '');
               $costos["$precio"] = $precio;
           
            $array = array(
                $costos,
                array_keys($costos)
            );
            array_multisort($array[0], SORT_ASC);
            $costos = $array[0];
            
            
            
         }else{//si no exiten ni vecinos
            $costos["$precio"]= $precio;            
         }

 /***********************************************fin calculo de costo y vecinos*********************************************************************/
         
        $p = $precio;
      
        /******************************calculo del precio por tipo plasitcos y sectorizados*******************************************/
        
        if($tipo == 1):
           $precio = ($p *($dim1 * $dim2)) * $canti;
          
           $precio = $precio * $cara;
        
        endif;
        
        /********************************//*fin calculo del precio por tipo  barniz uv matte brillo*******************************************/
        
        /******************************calculo del precio por tipo barniz uv matte brillo*******************************************/
        if($tipo == 2):
        
        if($cantidad < $canti){
            if($p < 1){
        
               $precio = $dim1 * $dim2 * $costo1['Formato']['precio'] * $canti;  
          
            }else{
                $precio = $p;
            }
            
            
        }else{
            $precio = $p;
        }
        
        endif;
        
        /********************************//*fin calculo del precio por tipo  barniz uv matte brillo*******************************************/
        /******************************calculo del precio por tipo plastico rigido*******************************************/
        if($tipo == 3){
           //echo "hola 3";
           $preciohoja = $this->Preciohoja->find(
           'all', 
           array(
           'conditions'=>array('Preciohoja.id'=>$hoja), 
           'fields'=>array('Preciohoja.precio')
           )
           ); 
           $precio = $preciohoja[0]['Preciohoja']['precio'];
           $precio = $precio * $canti * $cara;
           
        }
        /********************************//*calculo del precio por tipo sectorizados*******************************************/
        if($tipo == 4){
            
            $precio = (($costo1['Formato']['precio'] * $canti)/$costo1['Formato']['cantidadfinal']) * $cara;
          
        }
        /********************************//*fin calculo del precio por tipo plastico rigido*******************************************/
        
        /********************************//*fin calculo del precio por tipo plastico rigido*******************************************/
        $precio = number_format($precio, 2,'.', '');
        
        $costos["$precio"] = $precio;
        $array = array(
                $costos,
                array_keys($costos)
            );

            // use multisort, first on the values, then on the keys. This will erase the indexes in the $searchResult array\
            array_multisort($array[0], SORT_ASC);
            $costos = $array[0];
        
        $idcosto = "$precio";
        }
       
     $this->set(compact('costos','idcosto'));
  }
   public function produccion($id = null){

        $trabajo =$this->Trabajo->find('first',array('conditions'=>array('Trabajo.id'=>$id)));
        $trabajo1 =$this->Hojasruta->find('first',array('conditions'=>array('Hojasruta.trabajo_id'=>$id)));
        $trabajo2 =$this->Hojasproduccione->find('first',array('conditions'=>array('Hojasproduccione.trabajo_id'=>$id)));
        $cliente['Cliente']['nombre']=$trabajo['Cliente']['nombre'];
        $cliente['Cliente']['telefono']=$trabajo['Cliente']['telefono'];  
        $cliente['Cliente']['celular']=$trabajo['Cliente']['celular'];      
        $empleados=$trabajo1['Empleadostrabajo'];
        $tipostrabajo=$trabajo1['Hojarutatipotrabajo'];
        //debug($tipostrabajo);exit;
        $i=0;$k=0;
        foreach($empleados as $em):
            $empleado=$this->Empleado->find('first',array('conditions'=>array('Empleado.id'=>$em['empleado_id'])));
            $maquinaria=$this->Maquinaria->find('first',array('conditions'=>array('Maquinaria.id'=>$em['maquinaria_id'])));
            $nombre_empleado[$i]=array("nom_empleado"=>$empleado['Empleado']['nombre'], "maquina"=>$maquinaria['Maquinaria']['nombre']);
            $i++;
        endforeach;

        foreach($tipostrabajo as $tipos):
            $tipotrabajos1=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo1_id'])));
            $tipotrabajos2=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo2_id'])));
            $tipotrabajos3=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo3_id'])));
            $tipotrabajos4=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$tipos['tipotrabajo4_id'])));

            $recibos[$k]=$this->Reciboproduccione->find('all',array('conditions'=>array('Reciboproduccione.hojarutatipotrabajo_id'=>$tipos['id'])));
            $sucursal=$this->Sucursale->find('first',array('conditions'=>array('Sucursale.id'=>$tipos['sucursal_id'])));
            $tipo[$k]=array("tipotrabajo1"=>$tipotrabajos1['Tipotrabajo']['descripcion'],
                            "tipotrabajo2"=>$tipotrabajos2['Tipotrabajo']['descripcion'],
                            "tipotrabajo3"=>$tipotrabajos3['Tipotrabajo']['descripcion'],
                            "tipotrabajo4"=>$tipotrabajos4['Tipotrabajo']['descripcion'],
                            'descripcion'=>$tipos['descripcion'],
                            'cantidad_nominal'=>$tipos['cantidad_nominal'],
                            'sucursal'=>$sucursal['Sucursale']['nombre'],
                            'cara1'=>$tipos['cara1'],
                            'cara2'=>$tipos['cara2'],
                            'cara3'=>$tipos['cara3'],
                            'cara4'=>$tipos['cara4'],
                            'id_hojarutatipotrabajo'=>$tipos['id'],
                            'recibos'=>$recibos[$k]
                            );
            $k++;
        endforeach;
    // debug($trabajo);
    //debug($trabajo2);exit;
     
     
            $a=0;
            
               if($trabajo['Trabajo']['id'] == $trabajo2['Hojasproduccione']['trabajo_id']){
                
                $hp = 1;
                $a=1;
               }   
            
            if($a == 0){
                $hp = 0;
            }
       //debug($trabajo1);exit;
       $this->set(compact('trabajo','trabajo1','nombre_empleado','tipo','cliente','recibos','id','hp'));
      
   }
   function ajaxdatosparciales($id=null,$id2=null){
    if(!empty($this->data)):
        
        $this->request->data['Reciboproduccione']['fecha']=date('Y-m-d');
        //debug($this->data);exit;
        if($this->Reciboproduccione->save($this->data)){
          $this->Session->setFlash("Se ha registrado con exito!");

          $this->redirect(array('action' => 'produccion', $id2));
        }else{
          $this->Session->setFlash("error al crear!!!");
          $this->redirect(array('action' => 'produccion', $id2));          
        } 
    else:
        $this->layout='ajax';
        $tipotrabajo=$this->Hojarutatipotrabajo->find('first',array('conditions'=>array('Hojarutatipotrabajo.id'=>$id)));
    endif;
    
    $this->set(compact('tipotrabajo'));
   }
   function imprimerecibo($id=null){
    $data=$this->Reciboproduccione->find('first',array('conditions'=>array('Reciboproduccione.id'=>$id)));
    
    $trabajo=$this->Hojasruta->find('first',array('conditions'=>array('Hojasruta.id'=>$data['Hojarutatipotrabajo']['hojasruta_id'])));
    $tipo1=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$data['Hojarutatipotrabajo']['tipotrabajo1_id'])));
    $tipo2=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$data['Hojarutatipotrabajo']['tipotrabajo2_id'])));
    $tipo3=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$data['Hojarutatipotrabajo']['tipotrabajo3_id'])));
    $tipo4=$this->Tipotrabajo->find('first',array('conditions'=>array('Tipotrabajo.id'=>$data['Hojarutatipotrabajo']['tipotrabajo4_id'])));
    $this->set(compact('data','trabajo','tipo1','tipo2','tipo3','tipo4'));
   }
   function imprimirnotaentrega($idtrabajo=null, $idhojaruta=null){
   $hoja = $this->Hojasproduccione->find('all', array(
    'conditions'=>array('Hojasproduccione.trabajo_id'=> $idtrabajo, 
                        'Hojasproduccione.hojaruta_id'=> $idhojaruta
                        )
    ));
    $trabajo_id=$hoja[0]['Hojasproduccione']['trabajo_id'];
    $array = explode(" ",$hoja[0]['Hojasproduccione']['fecha']);
    $cliente=$this->Trabajo->find('first',array('conditions'=>array('Trabajo.id'=>$trabajo_id)));
    $horas = $array['1'];
    $array = $array['0'];
    $array = explode("-",$array);
    $anio = $array[0];
    $mes = $array[1];
    $dia = $array[2];
    $contador=$this->Notaentrega->find('first',array('conditions'=>array('Notaentrega.trabajo_id'=>$idtrabajo,'Notaentrega.hojaruta_id'=>$idhojaruta)));
    //debug($contador);exit;
    $id_entrega=$contador['Notaentrega']['id'];
    $contador=$contador['Notaentrega']['numero'];
    
    $this->set(compact('hoja', 'dia', 'mes', 'anio', 'horas','cliente','contador','id_entrega'));
   }
   function notaremision($idtrabajo=null, $idhojaruta=null){

    if (!empty($this->data)):
                //debug($this->data);exit;
                $numero=$this->data['Notaremisione']['numero'];
                $listado=$this->Notaremisione->find('all');
                foreach ($listado as $list) {
                    if($list['Notaremisione']['numero']==$numero){
                        $this->Session->setFlash('El numero ya existe, por favor inserte otro.');    
                        $this->redirect(array('action' => 'notaremision',$idtrabajo,$idhojaruta), null, true);
                    }
                }

                $this->Notaremisione->create();
                $this->request->data['Notaremisione']['trabajo_id']=$idtrabajo;
                $this->request->data['Notaremisione']['hojaruta_id']=$idhojaruta;
                $fecha=explode('/',$this->data['Notaremisione']['fecha']);
                $this->request->data['Notaremisione']['fecha']=$fecha[2].'-'.$fecha[1].'-'.$fecha[0];
                //debug($this->data);exit;
                if ($this->Notaremisione->save($this->data)) {
                    $this->redirect(array('action' => 'imprimirnotaremision',$idtrabajo,$idhojaruta), null, true);
                } else {
                    $this->Session->setFlash('No se pudo registrar!!!');
                }
    endif;
    $sucursal_id=$this->Session->read('sucursal_id');
    $consulta=$this->Notaremisione->find('first',array('conditions'=>array('Notaremisione.sucursal_id'=>$sucursal_id),'fields' => array('MAX(Notaremisione.numero) AS numero', '*')));
    //debug($consulta);exit;
    $numero=$consulta[0]['numero'];
    $this->set(compact('numero'));

   }
   function notaentrega($idtrabajo=null, $idhojaruta=null){

    if (!empty($this->data)):
                //debug($this->data);exit;

                $numero=$this->data['Notaentrega']['numero'];
                //debug($numero);exit;

                $listado=$this->Notaentrega->find('all');

                foreach ($listado as $list) {
                    
                    if($list['Notaentrega']['numero']==$numero){
                        $this->Session->setFlash('El numero ya existe, por favor inserte otro.');    
                        $this->redirect(array('action' => 'notaentrega',$idtrabajo,$idhojaruta), null, true);
                    }
                }


                
                $this->Notaremisione->create();
                $this->request->data['Notaentrega']['trabajo_id']=$idtrabajo;
                $this->request->data['Notaentrega']['hojaruta_id']=$idhojaruta;
                $fecha=explode('/',$this->data['Notaentrega']['fecha']);
                $this->request->data['Notaentrega']['fecha']=$fecha[2].'-'.$fecha[1].'-'.$fecha[0];
                //debug($this->data);exit;
                if ($this->Notaentrega->save($this->data)) {
                    $this->redirect(array('action' => 'imprimirnotaentrega',$idtrabajo,$idhojaruta), null, true);
                } else {
                    $this->Session->setFlash('No se pudo registrar!!!');
                }
    endif;
    $sucursal_id=$this->Session->read('sucursal_id');
    $consulta=$this->Notaentrega->find('first',array('conditions'=>array('Notaentrega.sucursal_id'=>$sucursal_id),'fields' => array('MAX(Notaentrega.numero) AS numero', '*')));
    $numero=$consulta[0]['numero'];
    
    $this->set(compact('numero'));

   }
   function imprimirnotaremision($idtrabajo=null, $idhojaruta=null){
    $hoja = $this->Hojasproduccione->find('all', array(
    'conditions'=>array('Hojasproduccione.trabajo_id'=> $idtrabajo, 
                        'Hojasproduccione.hojaruta_id'=> $idhojaruta
                        )
    ));
    $trabajo_id=$hoja[0]['Hojasproduccione']['trabajo_id'];
    $array = explode(" ",$hoja[0]['Hojasproduccione']['fecha']);
    $cliente=$this->Trabajo->find('first',array('conditions'=>array('Trabajo.id'=>$trabajo_id)));
    $horas = $array['1'];
    $array = $array['0'];
    $array = explode("-",$array);
    $anio = $array[0];
    $mes = $array[1];
    $dia = $array[2];
    $notaremision=$this->Notaremisione->find('first',
        array('conditions'=>array('Notaremisione.trabajo_id'=>$idtrabajo,'Notaremisione.hojaruta_id'=>$idhojaruta)));
   
    
    
    $this->set(compact('hoja', 'dia', 'mes', 'anio', 'horas','cliente','notaremision'));
   }
   function tablaplastico(){
    $this->layout='ajax';

   }
   function tablasectorizado(){
    $this->layout='ajax';

   }
   function tablauvmate(){
    $this->layout='ajax';

   }
   function tablauvbrillo(){
    $this->layout='ajax';

   }
   function editaremisiones($id=null){
    

    $this->Notaremisione->id = $id;
        if (!$id) {
            $this->Session->setFlash('No existe!');
            $this->redirect(array('action' => 'index'), null, true);
        }
        if (empty($this->data)) {
    $this->data = $this->Notaremisione->read();
            $fecha=explode('-',$this->data['Notaremisione']['fecha']);
            $this->request->data['Notaremisione']['fecha']=$fecha[2].'-'.$fecha[1].'-'.$fecha[0];


        } else {
            //debug($this->data);exit;
            $fecha=explode('-',$this->data['Notaremisione']['fecha']);
            $this->request->data['Notaremisione']['fecha']=$fecha[2].'-'.$fecha[1].'-'.$fecha[0];
            if ($this->Notaremisione->save($this->data)) {
                $this->Session->setFlash('Los datos fueron modificados');
                $this->redirect(array('action' => 'index'), null, true);
            } else {
                
            }
        }

    
    

   }
   function hojarutaimprime($id_trabajo=null,$tipo=null){

    if (!empty($this->data) and $tipo=='sinproduccion'):
               

                $numero=$this->data['Myhojasruta']['numero'];
                $listado=$this->Myhojasruta->find('all');

                foreach ($listado as $list) {
                    if($list['Myhojasruta']['numero']==$numero){
                        $this->Session->setFlash('El numero ya existe, por favor inserte otro.');    
                        $this->redirect(array('action' => 'hojarutaimprime',$id_trabajo,$tipo), null, true);
                    }
                }
                $this->Myhojasruta->create();
                $this->request->data['Myhojasruta']['sucursal_id']=$this->Session->read('sucursal_id');
                $this->request->data['Myhojasruta']['trabajo_id']=$id_trabajo;
                $fecha=explode('/',$this->data['Myhojasruta']['fecha']);
                $this->request->data['Myhojasruta']['fecha']=$fecha[2].'-'.$fecha[1].'-'.$fecha[0];
                //debug($this->data);exit;
                if ($this->Myhojasruta->save($this->data)) {
                    $this->redirect(array('action' => 'imprimir',$id_trabajo), null, true);
                } else {
                    $this->Session->setFlash('No se pudo registrar!!!');
                }
    endif;
    if (!empty($this->data) and $tipo=='conproduccion'):
               
                $this->Myhojasruta->create();
                $this->request->data['Myhojasruta']['sucursal_id']=$this->Session->read('sucursal_id');
                $this->request->data['Myhojasruta']['trabajo_id']=$id_trabajo;
                $fecha=explode('/',$this->data['Myhojasruta']['fecha']);
                $this->request->data['Myhojasruta']['fecha']=$fecha[2].'-'.$fecha[1].'-'.$fecha[0];
                //debug($this->data);exit;
                if ($this->Myhojasruta->save($this->data)) {
                    $this->redirect(array('action' => 'imprimirhp',$id_trabajo), null, true);
                } else {
                    $this->Session->setFlash('No se pudo registrar!!!');
                }
    endif;
    $consulta=$this->Myhojasruta->find('first',array('conditions'=>array('Myhojasruta.sucursal_id'=>$this->Session->read('sucursal_id')),'fields' => array('MAX(Myhojasruta.numero) AS numero', '*')));
    $numero=$consulta[0]['numero'];

    //debug($consulta);exit;
    $this->set(compact('numero'));


   }
   function borrarproduccion($id=null,$trabajo_id=null,$hojaruta_id=null){


      if (!$id) {
                        $this->Session->setFlash('id Invalida para reclamo');
                        $this->redirect(array('action' => 'editarhojaproduccion',$trabajo_id,$hojaruta_id), null, true);
                    }
                    if ($this->Hojasproduccione->delete($id)) {
                        $this->Session->setFlash('El dato fue eliminado');
                        $this->redirect(array('action' => 'editarhojaproduccion',$trabajo_id,$hojaruta_id), null, true);
                    }

   }
   function editarnotaremisiones($id=null){
    //debug($id);exit;
    $this->Notaremisione->id = $id;
    if (!$id) {
                    $this->Session->setFlash('No existe tal registro');
                    $this->redirect(array('action' => 'index'), null, true);
                }
                if (empty($this->data)) {
                    $this->data = $this->Notaremisione->read(); //find(array('id' => $id));
                } else {
                    $fecha=explode('/',$this->data['Notaremisione']['fecha']);
                    $this->request->data['Notaremisione']['fecha']=$fecha[2].'-'.$fecha[1].'-'.$fecha[0];
//                    debug($this->data);exit;
                   
                   
                    if ($this->Notaremisione->save($this->data)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array('action' => 'index'), null, true);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                    }
                }
    $consulta=$this->Notaremisione->find('first',array('fields' => array('MAX(Notaremisione.numero) AS numero', '*')));
    $numero=$consulta[0]['numero'];
    $this->set(compact('numero'));                
   }
   function editarnotaentrega($id=null){
    //debug($id);exit;
    $this->Notaentrega->id = $id;
    if (!$id) {
                    $this->Session->setFlash('No existe tal registro');
                    $this->redirect(array('action' => 'index'), null, true);
                }
                if (empty($this->data)) {
                    $this->data = $this->Notaentrega->read(); //find(array('id' => $id));
                } else {
                    $fecha=explode('/',$this->data['Notaentrega']['fecha']);
                    $this->request->data['Notaentrega']['fecha']=$fecha[2].'-'.$fecha[1].'-'.$fecha[0];
                   // debug($this->data);exit;
                   
                   
                    if ($this->Notaentrega->save($this->data)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array('action' => 'index'), null, true);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                    }
                }
    $consulta=$this->Notaentrega->find('first',array('fields' => array('MAX(Notaentrega.numero) AS numero', '*')));
    $numero=$consulta[0]['numero'];
    $this->set(compact('numero'));

   }
   function inventario($trabajo_id=null){
        
    $hojasproduccion=$this->Hojasproduccione->find('all',array('conditions'=>array('Hojasproduccione.trabajo_id'=>$trabajo_id)));
    if (!empty($this->data)) {
        //debug($this->data);exit;
                    $i=0;
                    foreach ($this->data as $micras) {
                        $save[$i]['Micra']['totalkilos']= ($micras['Inventario']['cantidad'] * $micras['Inventario']['metrajeini'] * $micras['Inventario']['metrajefin'] * $micras['Inventario']['micras']) / 1000;
                        $save[$i]['Micra']['micra']= $micras['Inventario']['micras'];
                        $save[$i]['Micra']['hojaproduccion_id']=$micras['Inventario']['hojaproduccion_id'];
                        $save[$i]['Micra']['trabajo_id']=$micras['Inventario']['trabajo_id'];
                        
                        $i++;


                    }
                    
                     if ($this->Micra->saveAll($save)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array('action' => 'index'), null, true);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                    }
                    

                }
    $this->set(compact('hojasproduccion'));
    }
    function verinventario($trabajo_id=null){

        $micras=$this->Micra->find('all',array('conditions'=>array('Micra.trabajo_id'=>$trabajo_id)));
        //debug($micras);exit;

        $this->set(compact('micras'));
  
    }
}
?>